package IO流_打印流.PrintStream;

import java.io.FileNotFoundException;
import java.io.PrintStream;

public class Test {
    public static void main(String[] args) {
        // PrintStream/PrintWriter(打印流)
        // 作用: 打印流可以实现更方便, 更高效的打印数据出去, 能实现打印啥出去就是啥出去

        // PrintStream提供的打印数据的方案
        // 构造器:
        // 1. public PrintStream(OutputStream/File/String): 打印流直接通向字节输出流/文件/文件路径
        // 2. public PrintStream(String fileName, Charset charset): 可以指定写出去的字符编码
        // 3. public PrintStream(OutputStream out, boolean autoFlush): 可以指定实现自动刷新
        // 4. public PrintStream(OutputStream out, boolean autoFlush, String encoding): 可以指定实现自动刷新, 并可指定字符的编码

        //方法:
        // 1. public void println(Xxx xx): 打印任意类型的数据出去
        // 2. public void writer(int/byte[]/byte[]一部分): 可以支持写字节数据出去


        try (
                // 1. 创建一个打印流管道
//                PrintStream ps = new PrintStream("Senior\\src\\IO流_打印流\\pat");// 默认字符集
                PrintStream ps = new PrintStream("Senior\\src\\IO流_打印流\\pat","GBK");// 指定字符集

                ){
            ps.println('a');
            ps.println(91);
            ps.println("我爱我的祖国");
            ps.print(true); // 不换行
            ps.println(99.5);

            ps.write(97); // 也可以写数据, 这里写的是: a
            //ps.write("我爱我的祖国"); // 不可以写字符 这是和PrintWriter唯一的区别
        } catch (Exception e) {
            e.printStackTrace();
        }

    }
}
